//package com.example.seed.config;
//
//import com.fasterxml.jackson.databind.ObjectMapper;
//import org.babyfish.jimmer.meta.ImmutableProp;
//import org.babyfish.jimmer.meta.ImmutableType;
//import org.babyfish.jimmer.spring.cache.RedisValueBinder;
//import org.springframework.data.redis.core.RedisOperations;
//
//import java.time.Duration;
//
///**
// * 自定义 Redis 值绑定程序
// *
// * @author AAA
// * @date 2024/04/12
// */
//public class CustomRedisValueBinder<K, V> extends RedisOperations<K, V> {
//
//    public CustomRedisValueBinder(RedisOperations<String, byte[]> operations, ObjectMapper objectMapper, ImmutableProp prop, Duration duration) {
//        super(operations, objectMapper, prop, duration);
//    }
//
//    public CustomRedisValueBinder(RedisOperations<String, byte[]> operations, ObjectMapper objectMapper, ImmutableType type, Duration duration) {
//        super(operations, objectMapper, type, duration);
//    }
//
//    /**
//     * 自定义缓存分隔符
//     *
//     * @param type 类型
//     * @return {@link String}
//     */
//    @Override
//    protected String getKeyPrefix(ImmutableType type) {
//
//        return type.getJavaClass().getSimpleName() + ':';
//    }
//
//    /**
//     * 自定义缓存分隔符
//     *
//     * @param prop 支柱
//     * @return {@link String}
//     */
//    @Override
//    protected String getKeyPrefix(ImmutableProp prop) {
//        return prop.getDeclaringType().getJavaClass().getSimpleName() + '.' + prop.getName() + ':';
//    }
//}
